package com.kuang.design.structural.bridge;

/**
 * 抽象手机类
 *
 * 手机的各种销售渠道价格都不一样
 */
public abstract class AbstractPhone {

    /**
     * 桥接+适配器 。。。 可桥接到任何地方
     */
    //桥接在此(设计期间就要想好)
    //桥接的核心 真正会引起此类变化的一个维度直接抽取出来，通过组合等方式桥接起来。
    AbstractSale sale; //分离渠道（桥接的关注点）  在手机中组合渠道


    //abstract int getPrice();//如果这样写需要多个实现。违反开闭原则。


    /**
     * 手机的基本信息
     * 当前手机的描述
     */
    abstract String getPhone();

    public void setSale(AbstractSale sale){
        this.sale=sale;
    }
}
